1. Field of the Invention
The present invention relates to an image processing apparatus, an image processing method, and a computer program storage medium, which is once store image data in a storage device, and to periodically read the stored image data, so as to generate image data.
2. Related Art
There is a thin client system configured in a form in which only user interfaces, such as a display, a mouse and a keyboard of a PC (Personal Computer) or a workstation, are placed as terminals at the hand of a user, and a computer main body having arithmetic capability is placed beyond a network. The thin client system need not be configured to prepare a plurality of computers for multiple users as before, but is configured to prepare only a plurality of terminals for the users and to prepare a computer main body capable of receiving the plurality of terminals. As a result the total costs of the system can be reduced. Further, the maintainability of the system can be improved by collectively managing the computer main body.
A display screen requires pixel information of a wide band, and hence sufficient transmission speed cannot be obtained in the general communication. Thus, at the time of transmitting a screen, it is necessary to compress the image data. As a method for compressing a moving picture, the MPEG (Moving Picture Experts Group), and the like, is well known. However, in the case of a personal computer screen, the update frequency of a generated screen is low, and an area to be updated is often locally limited in the screen. Thus, the processing configured, at the time when the update is generated, to compress and transmit only a partial image of the area for which the update is generated, is more efficient as compared with the processing in which the whole screen is simply compressed for each frame similarly to the case of a moving picture. For example, when a window appears in a part of the screen as shown in FIG. 16, only the image of the window is extracted (dotted line portion in FIG. 16), and the compressed image data of the window and the position coordinates on the screen where the window is displayed are transmitted. On the receiving terminal side, a desired screen can be obtained as shown in FIG. 17 in such a way that the compressed image data is first expanded and the expanded image is pasted at a position corresponding to the received position coordinates.
Further, there is considered a case where the window is moved by a mouse drag, or the like. In this case, a position after the movement is first specified. Then, the compressed image of the window which is the same as that in the above case is transmitted, so that the window can be displayed at the position after the movement (the left side in FIG. 18). However, the remainder of the window before the movement is left if nothing is done. Thus, the position coordinates of the position of the window before the movement is specified, and the background image is transmitted so as to be overwritten on the remainder of the window. Thereby, the movement of the window can be expressed (the right side in FIG. 18). Such technique of transmitting a screen is disclosed in, for example, JP-A 2006-285302 (Kokai).
However, when a window is moved, an image (in this case, a window image) which is already displayed on the screen is transmitted. The image is already stored in a frame buffer on the reception side, and hence the image essentially need not be transmitted again. Thus, the transmission of the image can be simply omitted by using a copy instruction of copying a part of the screen to another area. That is, the copy instruction in which the original position and size of the window and the position of the movement destination are respectively set as the position and size of the copy source and the position of the copy destination, is issued and transmitted from the transmission side. On the terminal side, upon receipt of the copy instruction, an area corresponding to the position and size which are specified as those of the copy source is read from the frame buffer, and the read image is written at the position of the copy destination. Thereby, the window image after the movement can be obtained. The subsequent processing of overwriting the background image on the remainder of the window before the movement is as the same as the above described processing.
In this way, it is possible to omit the transmission of the image displayed on the screen by using the copy instruction. However, in this case, the transmission of the image is omitted but the processing for reading the image from the frame buffer is added. The access to the frame buffer is, for example, a memory access to a SDRAM, and hence not a small amount of electric power is consumed.